const app = getApp();

Page({
    data: {
        userInfo: {
            id: app.globalData.userInfo.id,
            avatar: '',
            nickname: '',
            role: '',
        },
        avatarTmp: '',
    },

    // 更新用户信息并设置显示的名字和信息
    updateUserInfo() {
        console.log(this.data.userInfo);
        wx.uploadFile({
            url: 'http://localhost:8080/upload/avatar', // 上传图片的接口
            filePath: this.data.avatarTmp,
            name: 'file', // 上传文件的字段名
            success: (uploadRes) => {
                try {
                    const data = JSON.parse(uploadRes.data); // 假设返回的JSON包含图片URL
                    console.log('Upload response:', data);

                    if (data.code === 200 && data.data) {
                        this.data.userInfo.avatar = "/images/personal/" + data.data; // 使用服务器返回的图片URL
                        console.log(this.data.userInfo.avatar);

                        console.log("保存到数据库");
                        console.log(this.data.userInfo);
                        app.wxRequest('PUT', 'http://localhost:8080/system/info', this.data.userInfo,
                            (response) => {
                                setTimeout(() => {
                                    wx.switchTab({
                                        url: '/pages/personal/index',
                                    });
                                }, 1000);
                            },
                        )

                    } else {
                        wx.showToast({
                            title: '头像上传失败',
                            icon: 'none'
                        });
                    }
                } catch (error) {
                    console.error('JSON解析错误:', error);
                    wx.showToast({
                        title: '头像上传失败，解析错误',
                        icon: 'none'
                    });
                }
            },
            fail: (error) => {
                console.error('头像上传失败:', error);
                wx.showToast({
                    title: '头像上传失败，请稍后重试',
                    icon: 'none'
                });
            }
        });
    },

    chooseAvatar() {
        wx.chooseImage({
            count: 1, // 拍照或从手机相册中选1张图片
            sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图，默认二者都有
            sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机，默认二者都有
            success: (res) => {
                this.setData({
                    'avatarTmp': res.tempFilePaths[0]
                });
                console.log(this.data.avatarTmp);
            }
        });
    },

    bindNameInput: function (e) {
        this.setData({
            'userInfo.nickname': e.detail.value
        }, () => {
            console.log('Updated userInfo.nickname:', this.data.userInfo.nickname);
        });
    },

    bindRoleInput: function (e) {
        this.setData({
            'userInfo.role': e.detail.value
        }, () => {
            console.log('Updated userInfo.role:', this.data.userInfo.role);
        });
    },

});